Entities often generate and use data that is important in some way to their operations. This data can include, for example, business data, financial data, and personnel data. If this data were lost or compromised, the entity may realize significant adverse financial and other consequences. Accordingly, many entities have chosen to back up some or all of their data so that in the event of a natural disaster, unauthorized access, or other events, the entity can recover any data that was compromised or lost, and then restore that data to one or more locations, machines, and/or environments.
Entities may employ a variety of different backup applications, each of which includes a backup client that may be specific to a particular situation, configuration or data type. However, management of the various backups performed in an environment can be difficult due at least to the disparate nature and applicability of the various backup applications in use, and the devices that are targeted for backup by those applications.
Accordingly, entities sometimes use a particular backup application to perform various management duties with respect to backups performed by the other backup clients in the environment. This approach to backup management has proved problematic however, particularly where the managing backup application is called on to perform the cataloguing of backups performed by the other backup clients in the environment.
For example, even if the managing backup application is not directly involved in streaming data for backup, the managing backup application may still require the operation of daemons or other programs to serve as agents for each of the backup clients. In this example, each agent manages a target device by collecting session data from the corresponding backup client and providing that session data to the managing backup application. The use of multiple agents such as these can require significant changes to the configuration of the managing backup application, thus complicating the integration of the multitude of backup clients.
Still another problem with the use of agents, and particularly multiple agents, is that the backup clients are required to maintain a connection to their respective agent, for the purposes of transmitting session information, even though the agents are not being used for data backup by the backup client. This arrangement introduces additional processing and communication overhead in the environment.
Still another problem with arrangements such as that described above relates to the notion of managed and unmanaged devices. In particular, typical backup applications, such as the managing backup application described above, are configured to operate only with managed devices, that is, devices that are under the control of the backup application. However, because it is the backup clients rather than the managing backup application that are actually performing the backups, there are no managed devices associated with the managing backup application. Moreover, the backup applications themselves may operate in connection with unmanaged devices.
Thus, in order for the managing backup application to be able to catalogue backups performed in connection with unmanaged devices, significant modifications are required. In particular, the backup applications are required to create a corresponding dummy target device so that session information concerning the backups performed by those backup applications can be generated, captured, and then transmitted by the agents to the managing backup application for cataloguing. In this way, the dummy target device serves as a managed device that is essentially a proxy for the unmanaged device. While the use of dummy target devices is directed to the problem of cataloguing backups associated with unmanaged devices, it is a cumbersome and complicated approach and becomes increasingly so with larger numbers of backup applications.
One other problem associated with the use of dummy target devices concerns synchronization. In particular, there may be a lack of synchronization between the dummy target devices and the actual target devices.
In light of problems and shortcomings such as those noted above, it would be useful to be able to implement an architecture that would enable a variety of external backup applications to integrate with a managing backup application. It would also be desirable to avoid creation of dummy devices and the use of brokering. Finally, it would be useful to eliminate the need for agents to facilitate creation and cataloguing of session information.